package com.tianlan.blog.service;

import java.util.List;

import org.springframework.data.repository.query.Param;

import com.tianlan.blog.entity.SysRole;
import com.tianlan.common.page.MyPage;

public interface SysRoleService{
	
	/**
	 * 查询角色列表_有分页_可筛选查询条件
	 * @param role page
	 * @return
	 */
	List<SysRole> selectSysRoleList(SysRole role,MyPage<SysRole> page);
	
	/**
	 * 查询角色列表条数_有分页_可筛选查询条件
	 * @param role
	 * @return
	 */
	int selectSysRoleCount(@Param("role") SysRole role);
	
	/**
	 * 查询角色列表_没分页
	 * @param roleIds
	 * @return
	 */
	List<SysRole> getSysRoleList(List<Integer> roleIds);
	
	/**
	 * 查询所有角色_没分页
	 * @return
	 */
	List<SysRole> getSysRole();
	
	/**
	 * 添加角色
	 * @param role
	 * @return
	 */
	boolean createRole(SysRole role);
	
	/**
	 * 修改角色
	 * @param role
	 * @return
	 */
	boolean updateRole(SysRole role);
	
	/**
	 * 修改角色状态
	 * @param id
	 * @param roleStatus
	 * @return
	 */
	boolean updateRoleById(Integer id,String roleStatus);
	
	/**
	 * 
	 * @param roleId
	 * @return
	 */
	boolean deleteRole(Integer roleId);
	
	/**
	 * 检查角色名称是否存在
	 * @param role
	 * @return
	 */
	long checkRoleName(SysRole role);
	
	/**
	 * 检查角色标识是否存在
	 * @param role
	 * @return
	 */
	long checkRoleKey(SysRole role);
	
}
